Computer graphic techniques for mapping textures to three-dimensional surfaces have been developed and implemented in software and hardware. These conventional implementations usually map rectangular texture samples to the surface being rendered. Such texture samples or maps tend to present certain limitations that can significantly degrade or otherwise limit the quality of the rendered image.
Consequently, there is a need for improved computer graphic techniques for mapping textures to three-dimensional surfaces. Preferably, the improved computer graphic techniques will be simpler to implement and suitable for more cost-effective software and/or hardware.
Spherical images representing the radiance field at a point are useful to simulate reflections on shiny surfaces (environment maps). See, for example, Blinn, J. F., and M. E. Newell, “Texture and Reflection in Computer Generated Images”, Communications of the ACM, 19(10):542-547, October 1976; Greene, N., “Environment Mapping and other Applications of World Projections,” Computer Graphics and Applications, 6(11):21-29, November 1986; Voorhies, Douglas, and Jim Foran, “Reflection Vector Shading Hardware,” Siggraph '94, July 1994, 163-166; and, Heidrich, Wolfgang, and H. P. Seidel, “Realistic, Hardware-Accelerated Shading and Lighting,” Siggraph '99, August 1999, 171-178.
These images are also useful in producing arbitrary views from a point (spherical panoramas), for example, as described by Regan, M. and R. Pose, “Priority Rendering with a Virtual Reality Address Recalculation Pipeline”, Siggraph '94, 155-162; and, Chen, Shenchang, “QuickTime VR-An Image-Based Approach to Virtual Environment Navigation”, Siggraph '95, August 1995, 29-38.
In the future, it is expected that the use of such spherical images will become increasingly widespread to increase realism, as well as the use of multiple spherical and hemispherical images per synthetic scene to approximate radiance at many points throughout a rendered environment. See, Miller, G., M. Halstead, and M. Clifton, “On-the-fly Texture Computation for Real-Time Surface Shading,” IEEE Computer Graphics and Applications, March 1998, 44-58; Heidrich et al. (supra); and, Cabral, B., M. Olano, and P. Nemec, “Reflection Space Image Based Rendering,” Siggraph '99, August 1999, 165-170, for examples.
Hardware graphics systems tend to perform best when provided with a simple arrangement of samples from a simple domain that can be used to access spherical images and other texture maps. For example, rectangular arrays of samples (e.g., conventional texture maps) are ubiquitous. Such a simple structure provides many advantages including, for example, locality of reference, simplicity of texel addressing, and ease of filtering for reconstruction.
There are other schemes, such as spherical wavelets that exploit local differences in frequency content, however, these schemes tend to be significantly more complicated to implement in a hardware configuration. See, Schröder, P., and W. Sweldens, “Spherical Wavelets: Efficiently Representing the Sphere,” Siggraph '95, August 1995, 161-172; and, also Schroder, P. and W. Sweldens, “Spherical Wavelets: Texture Processing,” in P. Hanrahan and W. Purgathofer, editors, Rendering Techniques '95, pp. 252-263, Springer Verlag, Wien, N.Y., 1995, for example.
Consequently, many functions have been used in the past to map samples (information) from a two-dimensional (2D) texture domain to a sphere or sphere-like object. For example, Greene (supra), Regan et al. (supra), and Voorhies et al. (supra) utilize a cube map. Others, utilize an OpenGL map. See, e.g., Haeberli, P., and M. Segal, “Texture Mapping as a Fundamental Drawing Primitive,” in Fourth Eurographics Workshop on Rendering, June 1993, 259-266; and, the OpenGL Reference Manual, Addison Wesley, 1992. Blinn et al. (supra) utilize polar coordinate (e.g., latitude and longitude) maps. Still others, such as, Heidrich et al. (supra) have utilized dual stereographic maps.
Unfortunately, no consistent method has been presented for comparing the different features and/or performance of these and other mapping techniques.
Consequently, there is a need for methods and arrangements that can be implemented to compare certain types of mapping techniques. Moreover, there is a continuing need for new and improved mapping techniques that outperform existing mapping techniques.